Current 3D display of software diagrams is done using perspective drawing techniques on a two dimensional (2D) surface. An example is an exploded list of software objects (such as a table of database records). The main limitation of this approach is that each software object (e.g., database record) may be connected to additional objects (e.g. other database records) which may in turn have further connections ad infinitum (as in an object-oriented database). These complex orthogonal relationships are hard to depict on a 2D surface, making it difficult to visualize the operation of the entire system.
Similarly, 3D displays of integrated circuits also use perspective drawing techniques on a 2D surface. An example is a multi-layered integrated circuit. The limitation of this approach is analogous to that of software diagrams, that is complex orthogonal relationships are hard to depict on a 2D surface.